import {http} from "@/utils"

// 1.定义泛型
import type {ResType} from "./shared.ts"

// ① 请求频道列表

// 2.定义具体的接口类型
// 一项 Item 数据的类型
export type ChannelItem = {
    id: number,
    name: string
}
// 组合起来的全部数据
type ChannelRes = {
    channels: ChannelItem[]
}

// 请求频道列表
export function fetchChannelAPI() {
    return http.request<ResType<ChannelRes>>({
        url: "/channels",
    })
}

// ② 请求文章列表

// 定义类型
type ListItem = {
    art_id: string,
    title: string,
    aut_id: string,
    comm_count: number,
    pubdate: string,
    aut_name: string,
    is_top: 0 | 1,
    cover: {
        type: 0 | 1 | 3,
        images: string[],
    }
}
export type ListRes = {
    results: ListItem[],
    pre_timestamp: string,
}

type ReqParams = {
    channel_id: string,
    timestamp: string
}

// 请求文章列表
export function fetchGetListAPI(params: ReqParams) {
    return http.request<ResType<ListRes>>({
        url: '/articles',
        params,
    })
}